home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1992 June: ROMin Holiday / ADC Developer CD (1992-06) (''ROMin Holiday'')_iso / Developer Connection - 06-1992.iso / Periodicals / develop / develop 1 code / Declaration ROM / ExROM1Fun.a.lst < prev    next >
Encoding:
File List  |  1989-09-18  |  23.5 KB  |  357 lines  |  [TEXT/MPS ]

  1.  
  2. MC680xx Assembler - Ver 3.1                                                                                18-Sep-89  Page   1
  3. Copyright Apple Computer, Inc. 1984-1988
  4.  
  5. Loc   F Object Code     Addr  M    Source Statement
  6.  
  7.                                    ;---------------------------------------------------------------------------------------
  8.                                    ;
  9.                                    ;File:          ExROM1Fun.a
  10.                                    ;Dev system:    MPW 3.0
  11.                                    ;By:            MacDTS
  12.                                    ;Date:            8/08/89
  13.                                    ;
  14.                                    ; This is a very small sample declaration ROM with the required board
  15.                                    ; sResource and a functional sResource (which is blank).
  16.                                    ; The board id and functional sResource types are especially bogus - your values
  17.                                    ; must be obtained from MacDTS, after sending in the required information.
  18.                                    ; Anyway, this file shows how to put together a ROM.  You also need
  19.                                    ; the Cards and Drivers book, with the source code for a ROM and driver.
  20.                                    ; Both are stripped down versions of the Apple Macintosh Video card ROM and
  21.                                    ; video driver aka the TFB board.  There are also other examples and exploded
  22.                                    ; drawings of declaration ROMs on the Developer Helper CD. Volume one is
  23.                                    ; known as "Phil and Dave's Excellent CD".  The examples, tools, and drawings are
  24.                                    ; also on AppleLink.  To get to them, go into (in order):
  25.                                    ;
  26.                                    ;  Developer Services bulletin board icon
  27.                                    ;     Developer Technical Support folder
  28.                                    ;        Macintosh folder
  29.                                    ;           Tools folder
  30.                                    ;             Card Dev tools folder
  31.                                    ;
  32.                                    ;
  33.                                    ; In the Card Dev Tools folder are other folders containing tools and
  34.                                    ; libraries.  These include:
  35.                                    ;
  36.                                    ; Examples folder            - contains example declaration ROMs, video driver,
  37.                                    ;                              source to a program like the GetsInfo program found
  38.                                    ;                              in the Slot Tools folder
  39.                                    ; Gamma Information folder    - contains documention discussing gamma table format.
  40.                                    ;                              This will be updated in later documentation for the
  41.                                    ;                              new 32-bit QuickDraw.  Eventually, the Cards and
  42.                                    ;                              Drivers book will contain the new gamma information,
  43.                                    ; NuBusTester folder        - contains a library to detect new ROMs with fixed
  44.                                    ;                              Slot Manager (Slot Manager that runs in 32-bit mode
  45.                                    ;                              as opposed to 24-bit mode)
  46.                                    ; Training Tools folder        - contains MacDraw drawings of exploded
  47.                                    ;                              configuration ROMs (like the existing Apple video
  48.                                    ;                              card ROM and the Apple EtherNet board ROM.
  49.                                    ;
  50.                                    ; Slot tools folder            - Inside, you'll find these tools:
  51.                                    ;
  52.                                    ;                              CRCPatch - MPW tool that calculates and patches in
  53.                                    ;                              the crc value of the assembled Declaration ROM file.
  54.                                    ;
  55.                                    ;                              Data - MPW tool takes the assembled file and strips
  56.                                    ;                              off the code 0 segment,leaving the code 1 segment
  57.                                    ;                              (the raw code).  The resulting file can then be
  58.                                    ;                              downloaded to a rom burning machine.
  59.                                    ;
  60.                                    ;                              Tjscomm - A small terminal program that can be used
  61.                                    ;                              to download the data file to a rom burning machine.
  62.                                    ;
  63.                                    ;                              SlotMgrTst - application that excersises the slot
  64.                                    ;                              manager by making slot manager calls
  65.                                    ;
  66.                                    ;                              GetsInfo - application that displays sResources and
  67.                                    ;                              other configuration ROM information
  68.                                    ;
  69.                                    ; Disclaimer: the above may be reorganized at any time, or changed via additions
  70.                                    ; and deletions.
  71.                                    ;
  72.                                    ;
  73.                                    ;  The general structure of this example ROM is:
  74.                                    ;
  75.                                    ;                        [Format/Header]
  76.                                    ;                                |
  77.                                    ;                                |
  78.                                    ;                      [sResource Directory]
  79.                                    ;                            /        \
  80.                                    ;                           /         \
  81.  
  82. MC680xx Assembler - Ver 3.1                                                                                18-Sep-89  Page   2
  83. Copyright Apple Computer, Inc. 1984-1988
  84.  
  85. Loc   F Object Code     Addr  M    Source Statement
  86.  
  87.                                    ;                          /              \
  88.                                    ;                         /               \
  89.                                    ;            [Board sResource]        [Functional sResource]
  90.                                    ;                - Primary Init.            - Driver Directory.
  91.                                    ;                - board id
  92.                                    ;                - Vendor Info.
  93.                                    ;
  94.                                    ;
  95.                                    ;  If you want to print this, I suggest using landscape mode!!!
  96.                                    ;
  97.                                    ;-------------------------------------------------------------------
  98.  
  99.                                                MACHINE        MC68020
  100.  
  101.                                    ;=====================================================================
  102.                                    ;    Initial Assembler Directives
  103.                                    ;=====================================================================
  104.                                                    PRINT    ON
  105.  
  106.                                    ;
  107.                                    ;=====================================================================
  108.                                    ;    BEGIN Declaration ROM
  109.                                    ;=====================================================================
  110. 00000                              SampleDeclROM    MAIN
  111. 00000
  112. 00000
  113. 00000
  114. 00000                              ;*************************************************************
  115. 00000                              ;        Constants
  116. 00000                              ;*************************************************************
  117. 00000
  118. 00000   0000 1000                  ROMSize            EQU        $1000                        ;4K byte ROM in this example
  119. 00000   0000 ABCD                  TheBoardId        EQU        $ABCD                        ;the Board Id (DON'T USE
  120. 00000                                                                                  ; THIS-GET from DTS!)
  121. 00000
  122. 00000                                                                                  ;board sResource equates
  123. 00000                                                                                  ;the following two lines are
  124. 00000                              ;catBoard        EQU         1                        ;commented out since the equates
  125. 00000                              ;TypeBoard        EQU         0                        ;are already defined in ROMEqu.a
  126. 00000   0000 0000                  DrSwBoard        EQU         0                        ;NOT in ROMEqu.a, define it here
  127. 00000   0000 0000                  DrHwBoard        EQU         0                        ;NOT in ROMEqu.a, define it here
  128. 00000
  129. 00000   0000 6666                  CatExCat        EQU         $6666                    ;Functional sResource sRsrc_Type
  130. 00000   0000 7777                  TypExTyp        EQU         $7777                    ;equates. THESE ARE EXAMPLES
  131. 00000   0000 8888                  DrSwExSw        EQU         $8888                    ;ONLY!  DON'T USE THESE VALUES
  132. 00000   0000 9999                  DrHwExHw        EQU         $9999                    ;GET THEM FROM DTS!!
  133. 00000
  134. 00000                                                                                  ;Example values-vendors
  135. 00000                                                                                  ;should modify as needed
  136. 00000   0000 0000                  defMinorBase    EQU    0                                ;RAM Offset is 0
  137. 00000   0004 0000                  defMinorLength    EQU    $40000                            ;RAM length is $40000
  138. 00000
  139. 00000                              ;-----------  sResource Directory                    ;<Id OF>
  140. 00000   0000 0001                  sRsrcBoard        EQU        1                            ;Board sResource {May be any
  141. 00000                                                                                  ;number in [0..127]}
  142. 00000   0000 0080                  sRsrcFun        EQU        128                            ;functional sResource {May be
  143. 00000                                                                                  ;any number in [128..254]}
  144. 00000
  145. 00000
  146. 00000                              ;=====================================================================
  147. 00000                              ;        Directory
  148. 00000                              ;=====================================================================
  149. 00000                              _sRsrcDir        OSLstEntry    sRsrcBoard,_sRsrcBoard    ;References board sResource.
  150. 00000   0100 000C             1                      DC.L        (sRsrcBoard<<24) ++ ((_sRsrcBoard-*) ** $00FFFFFF)
  151. 00004                         1    ;                  DC.L        (sRsrcBoard<<24)+(_sRsrcBoard AND $00FFFFFF)-*
  152. 00004                         1    ;                  DC.L        (sRsrcBoard<<24) + ((_sRsrcBoard AND $00FFFFFF)-*)
  153. 00004                                              OSLstEntry    sRsrcFun,_sRsrcFun        ;References functional sResource.
  154. 00004   8000 0078             1                      DC.L        (sRsrcFun<<24) ++ ((_sRsrcFun-*) ** $00FFFFFF)
  155. 00008                         1    ;                  DC.L        (sRsrcFun<<24)+(_sRsrcFun AND $00FFFFFF)-*
  156. 00008                         1    ;                  DC.L        (sRsrcFun<<24) + ((_sRsrcFun AND $00FFFFFF)-*)
  157. 00008                                              DatLstEntry    endOfList,0                ;End of the list.
  158. 00008   FF00 0000             1                      DC.L        (endOfList<<24)+0
  159. 0000C
  160. 0000C
  161.  
  162. MC680xx Assembler - Ver 3.1                                                                                18-Sep-89  Page   3
  163. Copyright Apple Computer, Inc. 1984-1988
  164.  
  165. Loc   F Object Code     Addr  M    Source Statement
  166.  
  167. 0000C                              ;=============================================================
  168. 0000C                              ;            The Board sResource
  169. 0000C                              ;=============================================================
  170. 0000C                              _sRsrcBoard        OSLstEntry    sRsrcType,_BoardType    ;References Rsrc_Type entry
  171. 0000C   0100 0018             1                      DC.L        (sRsrcType<<24) ++ ((_BoardType-*) ** $00FFFFFF)
  172. 00010                         1    ;                  DC.L        (sRsrcType<<24)+(_BoardType AND $00FFFFFF)-*
  173. 00010                         1    ;                  DC.L        (sRsrcType<<24) + ((_BoardType AND $00FFFFFF)-*)
  174. 00010                                              OSLstEntry    sRsrcName,_BoardName    ;References Rsrc_Name entry
  175. 00010   0200 001C             1                      DC.L        (sRsrcName<<24) ++ ((_BoardName-*) ** $00FFFFFF)
  176. 00014                         1    ;                  DC.L        (sRsrcName<<24)+(_BoardName AND $00FFFFFF)-*
  177. 00014                         1    ;                  DC.L        (sRsrcName<<24) + ((_BoardName AND $00FFFFFF)-*)
  178. 00014                                              DatLstEntry    boardId,TheBoardId        ;boardId  **ASSIGNED BY MACDTS**
  179. 00014   2000 ABCD             1                      DC.L        (boardId<<24)+TheBoardId
  180. 00018                                              OSLstEntry    primaryInit,_sPInitRec    ;References Primary init record.
  181. 00018   2200 002C             1                      DC.L        (primaryInit<<24) ++ ((_sPInitRec-*) ** $00FFFFFF)
  182. 0001C                         1    ;                  DC.L        (primaryInit<<24)+(_sPInitRec AND $00FFFFFF)-*
  183. 0001C                         1    ;                  DC.L        (primaryInit<<24) + ((_sPInitRec AND $00FFFFFF)-*)
  184. 0001C                                              OSLstEntry    vendorInfo,_VendorInfo    ;References Vendor info list.
  185. 0001C   2400 002C             1                      DC.L        (vendorInfo<<24) ++ ((_VendorInfo-*) ** $00FFFFFF)
  186. 00020                         1    ;                  DC.L        (vendorInfo<<24)+(_VendorInfo AND $00FFFFFF)-*
  187. 00020                         1    ;                  DC.L        (vendorInfo<<24) + ((_VendorInfo AND $00FFFFFF)-*)
  188. 00020                                              DatLstEntry    endOfList,0                ;End of the list.
  189. 00020   FF00 0000             1                      DC.L        (endOfList<<24)+0
  190. 00024
  191. 00024                                                                                  ;Rsrc_Type IS ALWAYS THE SAME
  192. 00024                                                                                  ;for the board sResource
  193. 00024                                                                                  ;(but varies with different
  194. 00024                                                                                  ;functional sResources)
  195. 00024   0001                       _BoardType        DC.W    CatBoard                    ;ALWAYS $0001 for bd sResource
  196. 00026   0000                                       DC.W    TypBoard                    ;ALWAYS $0000 for bd sResource
  197. 00028   0000                                       DC.W    DrSwBoard                    ;ALWAYS $0000 for bd sResource
  198. 0002A   0000                                       DC.W    DrHwBoard                    ;ALWAYS $0000 for bd sResource
  199. 0002C   4F464649434941             _BoardName        DC.L    'OFFICIAL PRODUCT NAME'        ;The name of the Board - should
  200. 00044                                                                                  ;be official product name
  201. 00044
  202. 00044
  203. 00044                              ;-------------------------------------------------------------
  204. 00044                              ;            Primary Init Record (if needed)
  205. 00044                              ;-------------------------------------------------------------
  206. 00044   0000 0004                  _sPInitRec        DC.L    _EndsPInitRec-_sPInitRec    ;physical Block Size
  207. 00048                              ;                INCLUDE    'PrimaryInit.a'                ;Primary Init Code
  208. 00048   0000 0048                  _EndsPInitRec    EQU        *                            ;End of block
  209. 00048                                              STRING     C                            ;Restore to 'c' string type.
  210. 00048
  211. 00048
  212. 00048                              ;-------------------------------------------------------------
  213. 00048                              ;            Vendor Information record
  214. 00048                              ;-------------------------------------------------------------
  215. 00048                                                                                  ;** THE VENDOR INFO ENTRIES
  216. 00048                                                                                  ;ARE DEFINED BY THE VENDOR, NOT
  217. 00048                                                                                  ;BY MACDTS **
  218. 00048                              _VendorInfo        OSLstEntry    VendorId,_VendorId        ;References the Vendor Id.
  219. 00048   0100 0010             1                      DC.L        (VendorId<<24) ++ ((_VendorId-*) ** $00FFFFFF)
  220. 0004C                         1    ;                  DC.L        (VendorId<<24)+(_VendorId AND $00FFFFFF)-*
  221. 0004C                         1    ;                  DC.L        (VendorId<<24) + ((_VendorId AND $00FFFFFF)-*)
  222. 0004C                                              OSLstEntry    RevLevel,_RevLevel        ;References the Revision Level.
  223. 0004C   0300 001C             1                      DC.L        (RevLevel<<24) ++ ((_RevLevel-*) ** $00FFFFFF)
  224. 00050                         1    ;                  DC.L        (RevLevel<<24)+(_RevLevel AND $00FFFFFF)-*
  225. 00050                         1    ;                  DC.L        (RevLevel<<24) + ((_RevLevel AND $00FFFFFF)-*)
  226. 00050                                              OSLstEntry    PartNum,_PartNum        ;References the Part Number.
  227. 00050   0400 0024             1                      DC.L        (PartNum<<24) ++ ((_PartNum-*) ** $00FFFFFF)
  228. 00054                         1    ;                  DC.L        (PartNum<<24)+(_PartNum AND $00FFFFFF)-*
  229. 00054                         1    ;                  DC.L        (PartNum<<24) + ((_PartNum AND $00FFFFFF)-*)
  230. 00054                                              DatLstEntry    endOfList,0                ;End of the list.
  231. 00054   FF00 0000             1                      DC.L        (endOfList<<24)+0
  232. 00058
  233. 00058   434F4D50414E59             _VendorId        DC.L    'COMPANY NAME'                 ;The Vendor Id.  Most vendors use
  234. 00068                                                                                  ;company name
  235. 00068   52656C65617365             _RevLevel        DC.L    'Release-1.0'                ;The Revision Level
  236. 00074   31322D33343536             _PartNum        DC.L    '12-3456'                    ;The Part Number
  237. 0007C
  238. 0007C
  239. 0007C                              ;=============================================================
  240. 0007C                              ;            The Functional sResource
  241.  
  242. MC680xx Assembler - Ver 3.1                                                                                18-Sep-89  Page   4
  243. Copyright Apple Computer, Inc. 1984-1988
  244.  
  245. Loc   F Object Code     Addr  M    Source Statement
  246.  
  247. 0007C                              ;=============================================================
  248. 0007C                              _sRsrcFun        OSLstEntry    sRsrcType,_FunType        ;References sRsrc_Type
  249. 0007C   0100 001C             1                      DC.L        (sRsrcType<<24) ++ ((_FunType-*) ** $00FFFFFF)
  250. 00080                         1    ;                  DC.L        (sRsrcType<<24)+(_FunType AND $00FFFFFF)-*
  251. 00080                         1    ;                  DC.L        (sRsrcType<<24) + ((_FunType AND $00FFFFFF)-*)
  252. 00080                                              OSLstEntry    sRsrcName,_FunName        ;References sRsrc_Name
  253. 00080   0200 0020             1                      DC.L        (sRsrcName<<24) ++ ((_FunName-*) ** $00FFFFFF)
  254. 00084                         1    ;                  DC.L        (sRsrcName<<24)+(_FunName AND $00FFFFFF)-*
  255. 00084                         1    ;                  DC.L        (sRsrcName<<24) + ((_FunName AND $00FFFFFF)-*)
  256. 00084                                              OSLstEntry    sRsrcDrvrDir,_FunDrvrDir;References sResource driver dir
  257. 00084   0400 003C             1                      DC.L        (sRsrcDrvrDir<<24) ++ ((_FunDrvrDir-*) ** $00FFFFFF)
  258. 00088                         1    ;                  DC.L        (sRsrcDrvrDir<<24)+(_FunDrvrDir AND $00FFFFFF)-*
  259. 00088                         1    ;                  DC.L        (sRsrcDrvrDir<<24) + ((_FunDrvrDir AND $00FFFFFF)-*)
  260. 00088                                              DatLstEntry    sRsrcHWDevId,1            ;The hardware device Id.
  261. 00088   0800 0001             1                      DC.L        (sRsrcHWDevId<<24)+1
  262. 0008C                                              OSLstEntry    MinorBaseOS,_MinorBase    ;References Minor Base Offset.
  263. 0008C   0A00 002C             1                      DC.L        (MinorBaseOS<<24) ++ ((_MinorBase-*) ** $00FFFFFF)
  264. 00090                         1    ;                  DC.L        (MinorBaseOS<<24)+(_MinorBase AND $00FFFFFF)-*
  265. 00090                         1    ;                  DC.L        (MinorBaseOS<<24) + ((_MinorBase AND $00FFFFFF)-*)
  266. 00090                                              OSLstEntry    MinorLength,_MinorLength;References Minor Base Length.
  267. 00090   0B00 002C             1                      DC.L        (MinorLength<<24) ++ ((_MinorLength-*) ** $00FFFFFF)
  268. 00094                         1    ;                  DC.L        (MinorLength<<24)+(_MinorLength AND $00FFFFFF)-*
  269. 00094                         1    ;                  DC.L        (MinorLength<<24) + ((_MinorLength AND $00FFFFFF)-*)
  270. 00094                                              DatLstEntry    endOfList,0                ;End of the list.
  271. 00094   FF00 0000             1                      DC.L        (endOfList<<24)+0
  272. 00098
  273. 00098                                                                                  ;sRsrc_Type labels for the
  274. 00098                                                                                  ;Functional sResource; equates
  275. 00098                                                                                  ;are assigned by MacDTS
  276. 00098   6666                       _FunType        DC.W    CatExCat                    ;<Category>
  277. 0009A   7777                                       DC.W    TypExTyp                    ;<Type>
  278. 0009C   8888                                       DC.W    DrSwExSw                    ;<DrSw>
  279. 0009E   9999                                       DC.W    DrHwExHw                    ;<DrHw>
  280. 000A0
  281. 000A0   45784361745F45             _FunName        DC.L    'ExCat_ExType_ExSW_ExHW'    ;Convention: _FunName (the
  282. 000B8                                                                                  ;sRsrc_Name) is derived by using
  283. 000B8                                                                                  ;_FunType above, but stripping
  284. 000B8                                                                                  ;off the Cat, Typ, and DrSw/Hw
  285. 000B8                                                                                  ;prefixes, then separating the
  286. 000B8                                                                                  ;result by underscores.  For
  287. 000B8                                                                                  ;instance, the Macintosh II video
  288. 000B8                                                                                  ;board has a functional sRsrc_Type
  289. 000B8                                                                                  ;of CatDisplay, TypVideo,
  290. 000B8                                                                                  ;DrSwApple, and DrHwTFB, so the
  291. 000B8                                                                                  ;resulting sRsrc_Name is
  292. 000B8                                                                                  ;Display_Video_Apple_TFB
  293. 000B8
  294. 000B8   0000 0000                  _MinorBase        DC.L    defMinorBase                ;RAM Offset
  295. 000BC   0004 0000                  _MinorLength    DC.L    defMinorLength                ;RAM length
  296. 000C0                                                                                  ;Note: often these card-specific
  297. 000C0                                                                                  ;equates are put in a separate
  298. 000C0                                                                                  ;dependant equates file (Apple
  299. 000C0                                                                                  ;puts the dependent equates for
  300. 000C0                                                                                  ;the video card in the file
  301. 000C0                                                                                  ;DepVidEqu.a for example).  In
  302. 000C0                                                                                  ;order to keep all the equates
  303. 000C0                                                                                  ;for this example in one file, I
  304. 000C0                                                                                  ;put them at the top of this
  305. 000C0                                                                                  ;file.  Note the values used
  306. 000C0                                                                                  ;here are just for example
  307. 000C0                                                                                  ;purposes.
  308. 000C0
  309. 000C0
  310. 000C0                              ;-------------------------------------------------------------
  311. 000C0                              ;                Driver directory (if there's an on-board driver)
  312. 000C0                              ;-------------------------------------------------------------
  313. 000C0                              _FunDrvrDir        OSLstEntry    sMacOS68020,_sMacOS68020;References Macintosh-OS
  314. 000C0   0200 0008             1                      DC.L        (sMacOS68020<<24) ++ ((_sMacOS68020-*) ** $00FFFFFF)
  315. 000C4                         1    ;                  DC.L        (sMacOS68020<<24)+(_sMacOS68020 AND $00FFFFFF)-*
  316. 000C4                         1    ;                  DC.L        (sMacOS68020<<24) + ((_sMacOS68020 AND $00FFFFFF)-*)
  317. 000C4                                                                                  ;68020 driver.
  318. 000C4                                              DatLstEntry    endOfList,0                ;End of the list.
  319. 000C4   FF00 0000             1                      DC.L        (endOfList<<24)+0
  320. 000C8
  321.  
  322. MC680xx Assembler - Ver 3.1                                                                                18-Sep-89  Page   5
  323. Copyright Apple Computer, Inc. 1984-1988
  324.  
  325. Loc   F Object Code     Addr  M    Source Statement
  326.  
  327. 000C8
  328. 000C8                                                                                  ;Driver-1 (68020).
  329. 000C8   0000 0004                  _sMacOS68020    DC.L    _End020Drvr-_sMacOS68020    ;The physical Block Size
  330. 000CC                              ;                INCLUDE    'NameofDrvrSrcCodeFile.a'    ;The  driver code
  331. 000CC   0000 00CC                  _End020Drvr        EQU        *                            ;The end of the driver.
  332. 000CC                                              STRING     C
  333. 000CC
  334. 000CC
  335. 000CC
  336. 000CC
  337. 000CC   0000 0FEC                                  ORG     ROMSize-FHeaderRec.fhBlockSize
  338. 00FEC                              ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  339. 00FEC                              ;            Format/Header Block
  340. 00FEC                              ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  341. 00FEC   00FF F014                                  DC.L    (_sRsrcDir-*)**$00FFFFFF    ;Offset to sResource directory
  342. 00FF0   0000 1000                                  DC.L    ROMSize                        ;Length of declaration data
  343. 00FF4   0000 0000                                  DC.L    0                            ;CRC-can be patched by MPW crc tool
  344. 00FF8   01                                         DC.B    romRevision                    ;Revision level
  345. 00FF9   01                                         DC.B    AppleFormat                    ;Format
  346. 00FFA   5A93 2BC7                                  DC.L    TestPattern                    ;Test pattern
  347. 00FFE   00                                         DC.B    0                            ;Reserved byte (must be zero)
  348. 00FFF   E1                                         DC.B    $E1                            ;ByteLanes: 1110 0001 (bytelane 0)
  349. 01000
  350. 01000                                              ENDP
  351.  
  352.                                                    END
  353.  
  354. Elapsed time: 10.61 seconds.
  355.  
  356. Assembly complete - no errors found.  3815 lines.
  357.